7841. Нечетные элементы

 

Задана последовательность из n целых чисел. Выведите все ее нечетные элементы.

 

Вход. Первая строка содержит число n (n ≤ 100). Вторая строка содержит n целых чисел, каждое из которых по модулю не превышает 100.

 

Выход. Выведите все нечетные элементы последовательности в порядке их появления во входных данных.

 

Пример входа

Пример выхода

7

14 17 16 3 7 19 9

17 3 7 19 9

 

 

РЕШЕНИЕ

циклы

 

Анализ алгоритма

Будем читать элементы последовательности по одному с помощью цикла и сразу выводить нечётные. Число val является нечетным, если val % 2 0. Однако условие val % 2 == 1 некорректно для проверки нечётности отрицательных значений val. В языке Си при делении отрицательного нечетного числа на 2 результатом будет -1.

 

Реализация алгоритмацикл

Читаем количество входных чисел.

 

scanf("%d",&n);

 

В цикле последовательно обрабатываем n чисел.

 

for(i = 0; i < n; i++)

{

  scanf("%d",&val);

 

Если число val нечетное, то выводим его.

 

  //if (val % 2 == 1 || val % 2 == -1) printf("%d ",val);

  if (val % 2 != 0) printf("%d ",val);

}

 

Реализация алгоритмамассив

Объявим рабочий массив.

 

int m[101];

 

Читаем входную последовательность целых чисел в массив m.

 

scanf("%d",&n);

for (i = 0; i < n; i++)

  scanf("%d", &m[i]);

 

Перебираем числа в массиве. Если m[i] нечетное, то выводим его.

 

for (i = 0; i < n; i++)

  if (m[i] % 2 != 0) printf("%d ", m[i]);

printf("\n");

 

Java реализация

 

import java.util.*;

 

class Main

{

  public static void main(String[] args)

  {

    Scanner con = new Scanner(System.in);

 

Читаем количество входных чисел n.

 

    int n = con.nextInt();

 

Читаем входную последовательность из n целых чисел.

 

    for(int i = 0; i < n; i++)

    {

      int val = con.nextInt();

 

Если число val нечетное, то выводим его.

 

      if (val % 2 != 0) System.out.print(val + " ");

    }

    System.out.println();

    con.close();

  }

}

 

Python реализация

Читаем входные данные.

 

n = int(input())

lst = list(map(int,input().split()))

 

В цикле обрабатываем n чисел списка lst.

 

for x in lst:

 

Если число x нечетное, то выводим его.

 

  if x % 2 != 0:

    print(x, end = " ")

 

Python реализация – список

Читаем входные данные.

 

n = int(input())

lst = list(map(int,input().split()))

 

В цикле обрабатываем n чисел списка lst.

 

for i in range(n):

 

Если число lst[i] нечетное, то выводим его.

 

  if lst[i] % 2 != 0:

    print(lst[i],end = " ")

 

Python реализация – создание списка

Читаем входные данные.

 

n = int(input())

lst = list(map(int,input().split()))

 

Создадим список p, который содержит только нечетные числа.

 

p = [x for x in lst if x % 2 != 0]

 

Выводим ответ.

 

print(*p)